package com.huabo.audit.oracle.entity;

import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.huabo.audit.config.IgnoreSwaggerParameter;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import java.util.Date;
import java.util.List;

import org.springframework.format.annotation.DateTimeFormat;

/**
 * 描述: 
 * author: ziyao
 * date: 2022-04-21
 */
@TableName("TBL_NBSJ_TARGETTYPE")
@Data
@ApiModel("实体类")
@Accessors(chain = true)
public class TblNbsjTargettypeEntity {
	public static final Integer TEMP_NUMBER=0;//审计模板
	public static final Integer ZY_NUMBER=1;//指引模板
	public static final Integer COPY_TYPE=2; // 审计经验库
	
    @TableId(value = "targetid", type= IdType.AUTO)
    @ApiModelProperty(value="审计模板目录id")
    private Integer targetId;

    @TableField(value = "targetname")
    @ApiModelProperty(value="审计目标名称",required = true)
    private String targetName;

    @TableField(value = "targetdesc")
    @ApiModelProperty(value="描述",required = false)
    private String targetDesc;

    @TableField(value = "parentid")
    @ApiModelProperty(value="父id",required = true)
    private Integer parentId;

    @TableField(value = "createtime")
    @JSONField(format = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value="创建日期",hidden=true)
    private Date createTime;

    @TableField(value = "updatetime")
    @JSONField(format = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value="修改时间",hidden=true)
    private Date updateTime;

    @TableField(value = "TEMPID")
    @ApiModelProperty(value="模板id")
    private Integer tempId;

    @TableField(value = "status")
    @ApiModelProperty(value="类型：审计模板 0、指引模板 1")
    private Integer status;

    @TableField(value = "childrenList")
    @ApiModelProperty(value="子集节点")
    @IgnoreSwaggerParameter
    private List<TblNbsjTargettypeEntity> childrenList;

}
